package router

import (
	"ginstudydemo.com/main/controllers"
	"github.com/gin-gonic/gin"
)

// RoleRouter 函数定义了 /book 路由组及其处理函数
func RoleRouter(r *gin.Engine) {
	rGroup := r.Group("/roles")
	{

		// 用户分页列表
		rGroup.GET("/page", controllers.NewRoleController().GetRolesPage)

		// 角色下拉列表
		rGroup.GET("/options", controllers.NewRoleController().GetRolesOptions)

		// 新增角色
		rGroup.POST("", controllers.NewRoleController().AddRole)

		// 角色表单数据
		rGroup.GET("/:roleId/form", controllers.NewRoleController().GetRoleFormById)

		// 修改角色
		rGroup.PUT("/:roleId", controllers.NewRoleController().EditRole)

		// 分配菜单(包括按钮权限)给角色
		rGroup.PUT("/:roleId/menus", controllers.NewRoleController().AddRolesMenus)

		// 删除角色
		rGroup.DELETE("/:ids", controllers.NewRoleController().DelRoles)

		// 获取角色的菜单ID集合
		rGroup.GET("/:roleId/menuIds", controllers.NewRoleController().GetMenuIdsByRoleId)

		// 修改角色
		rGroup.PATCH("/:roleId/status", controllers.NewRoleController().EditRoleStatus)

		//rGroup.GET("/list", controllers.NewBookController().GetList)
		//rGroup.GET("/info/:id", controllers.NewBookController().GetInfo)
		//rGroup.POST("/add", controllers.NewBookController().Add)
		//新增
		//user.POST("/add", controllers.NewBookController().AddUser)
		////批量新增
		//user.POST("/batch", controllers.NewBookController().AddUsers)
		////新增&修改所有
		//user.POST("/save", controllers.NewBookController().SaveUser)
		////批量删除
		//user.POST("/del", controllers.NewBookController().DelUsers)

		//bookGroup.PUT("/update",controllers.NewBookController().GetList)

		// 以下是匿名函数的形式
		//book.POST("/add", func(c *gin.Context) {
		//	c.JSON(http.StatusOK, gin.H{
		//		"method": "POST",
		//	})
		//})
		//
		//book.PUT("/edit", func(c *gin.Context) {
		//	c.JSON(http.StatusOK, gin.H{
		//		"method": "PUT",
		//	})
		//})
		//
		//book.DELETE("/del", func(c *gin.Context) {
		//	c.JSON(http.StatusOK, gin.H{
		//		"method": "DELETE",
		//	})
		//})
		//
		//book.PATCH("/update", func(c *gin.Context) {
		//	c.JSON(http.StatusOK, gin.H{
		//		"method": "PATCH",
		//	})
		//})
	}

}
